When an industrial robot and another apparatus cooperatively perform an operation, there is a case where an operation area of the industrial robot overlaps an operation area of the cooperative apparatus, i.e., the robot and the cooperative apparatus share the same operation area. In such a case, it is necessary to prevent the industrial robot and the cooperative apparatus from interfering with each other. According to a conventional method of preventing such interference, when a taught program for an industrial robot contains a command for moving the robot into an interference area, input/output signals are checked and if there is a possibility of interfering with another apparatus, the robot is kept waiting, and then allowed to resume the operation after it is confirmed that there is not any fear of interference by input/output signals.
It is also necessary to ensure that the cooperative apparatus does not interfere with the industrial robot when the cooperative apparatus performs its operation. Therefore, an operation command has to be outputted to the cooperative apparatus after moving the industrial robot to an area in which there is no fear of interference. Further, since the operation command for the cooperative apparatus and an operation command for the robot can not be issued simultaneously, the robot is taught to output the operation command to the cooperative apparatus after the robot is moved to a position where an operation command can be outputted to the cooperative apparatus, i.e., a position where there is not any fear of interference. Further, an operation command for performing the subsequent operation has to be taught to the robot. In a case where the robot is taught to perform only one movement, it is necessary to divide the movement into two parts in teaching, in order to output a signal for operating the cooperative apparatus, and it is also necessary to define a waiting point in the teaching to the robot. For example, the teaching of the operation program to the robot is as follows:
(1) movement to a waiting point
(2) waiting until an operation permitting signal (indicating that an external apparatus has gone out of the interference area, so that there is no possibility of interference if the robot performs its operation) from the cooperative apparatus is received
(3) outputting an operation forbidding signal to the external apparatus when the operation permitting signal is detected
(4) performing the operation in the interference area such as mounting or picking-out of a workpiece
(5) movement to the waiting point
(6) turning off the operation forbidding signal for the external apparatus
In the case where the operation is taught to the robot by defining the waiting point in the manner as described above, a cycle time becomes longer and an operation effectivity becomes lower since the movement, which could be achieved by one operation command if the interference is not taken into consideration, is divided into a movement to the waiting point and a subsequent movement and since the robot is taught to output the signal at the waiting point. As timing of an output of the signal to the cooperative apparatus and the operation of the robot are related with each other, if the output timing of the signal is finely adjusted, it is necessary to modify positional designation in the operation command to the robot, to make it difficult to teach an optimal operation. Furthermore, commands of input/output signals are indispensable when the robot enters or goes out of the common area (the area where there is a possibility of interference). If those commands are incorrect, it is very serious since the robot and the cooperative apparatus may interfere with each other. Thus, the teaching of the operation has to be performed circumspectly, and preparation of the operation program to the robot is difficult.